package com.xxx.mch.service;

import com.github.pagehelper.PageInfo;
import com.xxx.mch.domain.dto.DeterminationScoreDetailDto;
import com.xxx.mch.domain.dto.DeterminationScoreTemplateDto;
import com.xxx.mch.domain.po.DeterminationScore;
import com.xxx.mch.domain.request.DeterminationQueryScoreRequest;
import com.xxx.mch.domain.request.DeterminationScoreTemplateRequest;
import com.xxx.mch.domain.request.RuleSearchRequest;
import java.math.BigDecimal;

import java.util.List;

/**
 * @author FengHaixin
 * @description 一句话描述该文件的用途
 * @date 2020/2/26
 */
public interface DeterminationScoreService
{
    void saveScore(List<DeterminationScore> determinationScoreList, String month);


    BigDecimal querySumScore(DeterminationQueryScoreRequest queryScoreRequest);


    DeterminationScoreDetailDto queryScoreRecord(DeterminationQueryScoreRequest queryScoreRequest);

    PageInfo<DeterminationScore> queryScoreRecordList(DeterminationQueryScoreRequest queryScoreRequest);

    void createOrUpdateTemplate(List<DeterminationScoreTemplateRequest> templateRequestList);


    void deleteTemplate(Integer templateId);


    List<DeterminationScoreTemplateDto> getTaskTemplate(Integer parentId, Integer depth);


    List<DeterminationScoreTemplateDto> ruleSearch(RuleSearchRequest ruleSearchRequest);
}
